package com.linln.admin.rsa;

public enum AuthorizationKeyType {
    /**
     * RSA2
     */
    RSA2("RSA2", "RSA2"),

    /**
     * SM2
     */
    SM2("SM2", "SM2");

    /**
     * 编码
     */
    private String code;

    /**
     * 名称
     */
    private String name;

    /**
     * 构造方法
     * @param code 编码
     * @param name 名称
     */
    AuthorizationKeyType(String code, String name) {
        this.code = code;
        this.name = name;
    }

    /**
     * 通过编码获取枚举对象
     * @param code 编码
     * @return 枚举对象
     */
    public static AuthorizationKeyType getByCode(String code) {
        for (AuthorizationKeyType type : values()) {
            if (type.code.equals(code)) {
                return type;
            }
        }
        return null;
    }

    /**
     * 获取编码
     * @return 编码
     */
    public String getCode() {
        return code;
    }

    /**
     * 获取名称
     * @return
     */
    public String getName() {
        return name;
    }
}
